﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
using BusinessLogicLayer;
using Entities;
using WindowsApplication1;
using DevExpress.XtraEditors;

namespace QLNhaSach.Modules.ThongTin
{
    public partial class DanhSachHoaDon : UserControl
    {
        DataTable table = new DataTable();
        public DanhSachHoaDon()
        {
            InitializeComponent();
            table.Columns.Add("STT");
            table.Columns.Add("Mã hoá đơn");
            table.Columns.Add("Tên khách hàng");
            table.Columns.Add("Ngày lập hoá đơn");
            HoaDonBanSachBO hdbo = new HoaDonBanSachBO();
            DataTable dt = hdbo.layDanhSachHoaDon();

            int i = 1;
            foreach (DataRow dr in dt.Rows)
            {
                KhachHangBO khbo = new KhachHangBO();
                KhachHang kh = khbo.layThongTinKhachHang(int.Parse(dr["HDBS_MAKHACHHANG"].ToString()));
                table.Rows.Add(i++, dr["HDBS_MAHOADON"].ToString(), kh.HoTenKhachHang, dr["HDBS_NGAYLAPHOADON"].ToString());
            }
            gridControl1.DataSource = table;
            gridView1.Columns["Mã hoá đơn"].Visible = false;
        }

        private void simpleButton7_Click(object sender, EventArgs e)
        {
            Environment.Exit(1);
        }

        private void simpleButton2_Click(object sender, EventArgs e)
        {
            //this.Visible = false;
            QLNhaSach.Modules.ThongTin.ChiTietHoaDon chiTietHoaDon;
            chiTietHoaDon = new QLNhaSach.Modules.ThongTin.ChiTietHoaDon();
            chiTietHoaDon.Dock = System.Windows.Forms.DockStyle.Fill;
            chiTietHoaDon.Location = new System.Drawing.Point(0, 0);
            chiTietHoaDon.Name = "chiTietHoaDon";
            chiTietHoaDon.Size = new System.Drawing.Size(768, 516);
            chiTietHoaDon.TabIndex = 10;
            SplitContainerControl ctr = (SplitContainerControl)this.Parent.Parent;
            ctr.Panel2.Controls.Clear();
             DataRow cell = gridView1.GetDataRow(gridView1.FocusedRowHandle);
             if (cell != null)
             {
                 string maHoaDOn = cell[1].ToString();
                 chiTietHoaDon.MaHoaDon = int.Parse(maHoaDOn);
                 ctr.Panel2.Controls.Add(chiTietHoaDon);
             }else
             {
                 MessageBox.Show("Không thể lấy được mã hoá đơn");
             }
        }

        private void simpleButton1_Click(object sender, EventArgs e)
        {
            HoaDon hd = new HoaDon();
            DataRow cell = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            if (cell != null)
            {
                string maHoaDon = cell[1].ToString();
                HoaDonBanSachBO hdbs = new HoaDonBanSachBO();
                int kq = hdbs.DeleteHoaDon(maHoaDon);
                if (kq == 1)
                {
                    MessageBox.Show("Xóa hoá đơn thành công");
                    DataTable dt = new DataTable();
                    gridControl1.DataSource = null;
                    dt.Columns.Add("STT");
                    dt.Columns.Add("Mã hoá đơn");
                    dt.Columns.Add("Tên khách hàng");
                    dt.Columns.Add("Ngày lập hoá đơn");
                    HoaDonBanSachBO hdbo = new HoaDonBanSachBO();
                    DataTable ds = hdbo.layDanhSachHoaDon();

                    int i = 1;
                    foreach (DataRow dr in ds.Rows)
                    {
                        KhachHangBO khbo = new KhachHangBO();
                        KhachHang kh = khbo.layThongTinKhachHang(int.Parse(dr["HDBS_MAKHACHHANG"].ToString()));
                        dt.Rows.Add(i++, dr["HDBS_MAHOADON"].ToString(), kh.HoTenKhachHang, dr["HDBS_NGAYLAPHOADON"].ToString());
                    }
                    gridControl1.DataSource = dt;
                }else{
                    MessageBox.Show("Không thể xoá hoá đơn này do tồn tại chi tiết hoá đơn");
                }
            }
        }

        private void gridView1_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
        {
            DataRow cell = gridView1.GetDataRow(gridView1.FocusedRowHandle);
        }

        private void simpleButton3_Click(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();
            gridControl1.DataSource = null;
            dt.Columns.Add("STT");
            dt.Columns.Add("Mã hoá đơn");
            dt.Columns.Add("Tên khách hàng");
            dt.Columns.Add("Ngày lập hoá đơn");
            HoaDonBanSachBO hdbo = new HoaDonBanSachBO();
            DataTable ds = hdbo.layDanhSachHoaDon();

            int i = 1;
            foreach (DataRow dr in ds.Rows)
            {
                KhachHangBO khbo = new KhachHangBO();
                KhachHang kh = khbo.layThongTinKhachHang(int.Parse(dr["HDBS_MAKHACHHANG"].ToString()));
                dt.Rows.Add(i++, dr["HDBS_MAHOADON"].ToString(), kh.HoTenKhachHang, dr["HDBS_NGAYLAPHOADON"].ToString());
            }
            gridControl1.DataSource = dt;
            gridView1.Columns["Mã hoá đơn"].Visible = false;
        }
    }
}
